<?php
/**
 * 
 * @author bqd
 *
 */
class ExtendedValidationBehavior extends ModelBehavior {
	var $options = array();
    function setup(&$model, $settings = array()) {
        $default = array();

		if (!isset($this->__settings[$model->alias])) {
			$this->__settings[$model->alias] = $default;
		}
		
		$this->__settings[$model->alias] = am($this->__settings[$model->alias], $settings);
    }
	
	/**
	 * Phương thức này được sử dụng để kiểm tra dữ liệu nhập
	 * @param $data
	 * @return unknown_type
	 */
	function validateData(&$model, &$data) {
		$model->set($data);
		$invalidFields = $model->invalidFields();
		$model->validates();
        //debug($invalidFields);   exit;
		
		if (count($invalidFields)) {
			throw new Exception(__("Có lỗi xuất hiện trong quá trình nhập dữ liệu. Bạn vui lòng kiểm tra lại", true));
		} else {
			return $data;
		}
	}
}
?>